<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JS</title>
</head>
<body>

    <div onclick="alert('hello js')" > 这是一个div, 点击我下试试</div>
    
    <script src="app.js"></script>

    <script>
        // alert("hello");
        //console.log("hello world");

        // let a = 10;
        // console.log(a);
        // let b = "hello"
        // console.log(b);

        // let a = 10;
        // console.log(a);
        // a = "hello";
        // console.log(a);

        // let a = 10;
        // let b = '10';
        // console.log(a==b);

        // let c = 1;
        // let d = true;
        // console.log(c==d);

        // let arr = new Array();
        // let arr2 = [];
        // let arr3 = [1,2,3];
        // let arr4 = [1, "hello", true];

        // let arr = ["李四", "王五", "张三"];
        // for(let i=0; i<arr.length; i++){
        //     console.log(arr[i]);
        // }

        // for(let i in arr){
              //此处i是数组下标 
        //     console.log(arr[i]);
        // }

        //arr.push("奶茶");

        //arr.splice(3,1);

        // for(let elem of arr){
        //     // 此处elem是数组元素
        //     console.log(elem);
        // }


        // console.log(arr[0]);
        // console.log(arr[1]);
        // console.log(arr[2]);
        // console.log(arr);

        // console.log(arr[100]);
        // console.log(arr[-1]);

        // arr[-1] = "奶狗";
        // arr["hello"] = "奶狗"
        // console.log(arr);



        // function f(){
        //     console.log("hello");
        // }

        // // 不需要写参数的类型
        // function add(x, y){
        //     // 每个函数里面都会自动定义一个arguments变量, 是个数组, 包含了所有实参;

        //     arguments;
        //     return x+y;
        // }

        // // 多个形参
        // function add2(){
        //     let result = 0;
        //     for(let elem of arguments){
        //         result += elem;
        //     }
        //     return result;
        // }


        // // 函数表达式, 匿名函数赋值给了一个add变量, add变量的类型就叫做function类型;
        // // function类型的变量是可以调用的;
        // let add = function(){
        //     let result = 0;
        //     for(let elem of arguments){
        //         result += elem;
        //     }
        //     return result;
        // }


        // console.log(add("10"));
        // console.log(add(10, 20));


        // 变量作用域
        // let num = 1;

        // function test1(){
        //     let num = 2;

        //     function test2(){
        //         let num = 3;
        //         console.log("test2: " + num);
        //     }

        //     test2();

        //     console.log("test1: "+ num);
        // }

        // test1();

        // console.log("global: " + num);

        // js对象
        // let student = {
        //     name: "boobo",
        //     age: 25,
            
        //     sing: function(){
        //         console.log("hello boobo");
        //     }
        // }

        // 使用 new object 创建对象
        // let student = new Object();
        // student.name = "bobo";
        // student.age = 25;
        // student.sing = function(){
        //     console.log("ahahah");        
        // }

        // console.log(student.name);
        // console.log(student.age);
        // student.sing();




    </script>


</body>
</html>